﻿
$(document).ready(main);
var cargo = sessionStorage.getItem("cargo");
 

function main() {
    cargarPermisos(cargo);
    $("#RegTbxFecha").datepicker({ dateFormat: 'dd/mm/yy' });
    $("#FechaIB").datepicker({ dateFormat: 'dd/mm/yy' });
    $("#FechaFB").datepicker({ dateFormat: 'dd/mm/yy' });
    $("#RegBtnCancelar").click(menuQuejasySugerencias);
    $("#botonCancelar2").click(menuQuejasySugerencias);
    $("#RegBtnRegistrar").click(registrarQuejaySugerencia);
    $("#botonBuscar").click(buscarQuejaySugerencia);
    $("#Limpiar").click(LimpiarBusquedaQS);
    $("#botonModificarB").hide();
    $("#botonAtender").hide();
//    $("#botonAtender").click(eliminar);
    cargarEdificios();
    $("#NombreDinamico").hide();
    $("#RegTbxIdPersona").hide();
    $("#LugarBuscar").hide();
    $("#ModTbxIdUsuario").hide();

    if ((cargo==12)||(cargo==3)||(cargo==5)){
        $("#RegSctEdificio option").each(function () {
            $(this).attr("selected", "selected");
            if ($(this).val() == sessionStorage.getItem("edificio")) {
                $(this).attr("selected", "selected");
                return false;
            }
        });
        if (document.getElementById("RegSctEdificio")!=null){
        document.getElementById("RegSctEdificio").setAttribute("disabled", "true");
        }
    }


    
}

function cargarPermisos(cargo){
  if ((cargo==1)||(cargo==3)||(cargo==11)||(cargo==4)){
    $("#Registrar").hide();
  }
  if ((cargo==5)||(cargo==12)){
    $("#Buscar").hide();
  }
}

//LIMPIAR BUSCAR
function LimpiarBusquedaQS() {

    document.getElementById("FechaIB").value = "";
    document.getElementById("FechaFB").value = "";
    document.getElementById("BscSctEdificio").value = "";
    document.getElementById("estado").value = "";
    document.getElementById("tipo").value = "";

}
//********************************************************

//FUNCION LIMPIAR LABELS DINAMICOS
function borrarErrores() {
    document.getElementById("RegLblErrorAnonimo").innerHTML = "";
    document.getElementById("RegLblErrorEdificio").innerHTML = "";
    document.getElementById("RegLblErrorTipo").innerHTML = "";
    document.getElementById("RegLblErrorLugar").innerHTML = "";
    document.getElementById("RegLblErrorFecha").innerHTML = ""; 
    document.getElementById("RegLblErrorDescripcion").innerHTML = "";
}
//*********************************************************

//FUNCION CARGAR COMBOBOX DE LISTA DE EDIFICIOS
function cargarEdificios() {

    var enviar = {
        Nombre: ""
    }

    console.log(enviar);

    var jsonData = JSON.stringify(enviar);

    $.ajax({
        async:false,
        type: "POST",
        data: jsonData,
        dataType: "json",
        contentType: "application/json; charset=utf-8",
        url: "cargarEdificios",
        success: function (data) {
            console.log(data);

            var lista = data.ListaEdificio;

            $("#RegSctEdificio").find('option').remove().end().append("<option></option>");
            $.each(lista, function (i, item) {
                $("#RegSctEdificio").append("<option value =\"" + item.IdEdificio + "\">" + item.Nombre + "</option>");
            });
        }
    });
}

//******************************************************
//Prueba
function clickQueja() {
if ($("input:radio[name='RegRbnTipo']").is(":checked")){
    if($("input[name='RegRbnTipo']:checked").val()==2){
        $("#LugarDinamico").hide();
    }
    if($("input[name='RegRbnTipo']:checked").val()==1){
        $("#LugarDinamico").show();
    }
}
}

//************************************************************************
//Prueba
function clickAnonimo() {
var retrievedObject = sessionStorage.getItem("idUsuario");
        var enviar = {
            Usr:retrievedObject,
            Anonimo:1
            }
        var jsonData = JSON.stringify(enviar);
        $.ajax({
            async:false,
            type: "POST",
            data: jsonData,
            dataType: "json",
            contentType: "application/json; charset=utf-8",
            url: "BuscarDatos",
            success: ActualizarDatos
        });
if ($("input:radio[name='RegRbnAnonimo']").is(":checked")){
    if($("input[name='RegRbnAnonimo']:checked").val()==2){
        $("#NombreDinamico").show();
    }
    if($("input[name='RegRbnAnonimo']:checked").val()==1){
        $("#NombreDinamico").hide();
    }
}
}
function ActualizarDatos(data){

    var quejaySugerencia = data.datosUsuario;

    document.getElementById("RegTbxPersona").value = quejaySugerencia.Nombres + " " +quejaySugerencia.Apellidos;
    document.getElementById("RegSctEdificio").value = quejaySugerencia.IdEdificio;
    document.getElementById("RegTbxIdPersona").value = quejaySugerencia.IdPersona;
}
//************************************************************************
//FUNCION REGISTRAR QUEJAS Y SUGERENCIAS
function registrarQuejaySugerencia() {
    var enviar = {
        IdPersona:$("#RegTbxIdPersona").attr("value"),
        IdEdificio: $("#RegSctEdificio").val(),
        Tipo: $("input[name='RegRbnTipo']:checked").val(),
        Anonimo: $("input[name='RegRbnAnonimo']:checked").val(),
        Lugar: $("#RegTbxLugar").attr("value"),
        Fecha: $("#RegTbxFecha").attr("value"),
        Descripcion: $("#RegTbxDescripcion").attr("value")
    }
  //  alert(enviar.id_Edificio + " - " + enviar.Tipo + " - " + enviar.Lugar + " - " + enviar.Fecha + " - "
  //  + enviar.TextAreaQuejasySugerencias);
    fv = new formValidator();
    borrarErrores();
    if (!fv.isCheckedRadioButton($("input:radio[name='RegRbnAnonimo']"))) {
        fv.raiseError("Por favor seleccione si es anonimo");
        document.getElementById("RegLblErrorAnonimo").innerHTML = "Seleccione una opción";
    } else {
        document.getElementById("RegLblErrorAnonimo").innerHTML = "";
    }
    if (!fv.isCheckedRadioButton($("input:radio[name='RegRbnTipo']"))) {
        fv.raiseError("Por favor seleccione un tipo de solicitud");
        document.getElementById("RegLblErrorTipo").innerHTML = "Seleccione un tipo";
    } else {
        document.getElementById("RegLblErrorTipo").innerHTML = "";
    }
    if($("input[name='RegRbnTipo']:checked").val()==1){
        if (fv.isEmpty(document.getElementById("RegTbxLugar").value) || (!fv.isAlphaNumeric(document.getElementById("RegTbxLugar").value))) {
        fv.raiseError("Por favor ingrese un lugar correcto");
        document.getElementById("RegLblErrorLugar").innerHTML = "Ingrese un lugar correcto";
        } else {
        document.getElementById("RegLblErrorLugar").innerHTML = "";
        }
    }
    
    if (fv.isEmpty(document.getElementById("RegTbxFecha").value)) {
        fv.raiseError("Por favor ingrese una fecha");
        document.getElementById("RegLblErrorFecha").innerHTML = "Ingrese una fecha";
    } else {
        document.getElementById("RegLblErrorFecha").innerHTML = "";
    }
        
    if (fv.isEmpty(document.getElementById("RegTbxDescripcion").value) && !fv.isAlphaNumeric(document.getElementById("RegTbxDescripcion").value)) {
        fv.raiseError("Por favor seleccione una descripción");
        document.getElementById("RegLblErrorDescripcion").innerHTML = "Ingrese una descripción correcta";
    } else {
        document.getElementById("RegLblErrorDescripcion").innerHTML = "";
    }
    if (fv.numErrors() < 1) {

        //        alert($("#Nombre").val());
        console.log(enviar);
        var jsonData = JSON.stringify(enviar);
        //        alert(jsonData);
        $.ajax({
            async:false,
            type: "POST",
            data: jsonData,
            dataType: "json",
            contentType: "application/json; charset=utf-8",
            url: "registrarQuejasySugerencias",
            success: llegadaQuejaySugerencia

        });
        return true;
    }
    else {
        return false;
    }
}

function llegadaQuejaySugerencia(data) {
    window.history.back();
    alert(data.me);
}
//*************************************************************************
//BUSCAR QUEJAS Y SUGERENCIAS

function buscarQuejaySugerencia() {
var estado = 3;
if ($("#estado").attr("value")==2) {estado = 0;}
else { if ($("#estado").attr("value")==1) {estado = 1;};}
    var enviarBusqueda = {
        FechaInicial: $("#FechaIB").attr("value"),
        FechaFinal: $("#FechaFB").attr("value"),
        IdEdificio: $("#RegSctEdificio").val(),
        Tipo: $("#tipo").attr("value"),
        Estado: estado
    }
    var jsonData = JSON.stringify(enviarBusqueda)
    //    alert(enviarBusqueda.FechaI + " - " + enviarBusqueda.FechaF + " - " + enviarBusqueda.id_Edificio + " - "
    //    + enviarBusqueda.Tipo + " - " + enviarBusqueda.Estado);
    $.ajax({
        async:false,
        type: "POST",
        data: jsonData,
        dataType: "json",
        contentType: "application/json; charset=utf-8",
        url: "buscarQuejasySugerencias",
        success: llegadaBusqueda
    });
}

function llegadaBusqueda(data) {
    //    alert(data);
    var lista = data.ListaQuejasySugerencias;
    //    alert(lista);
    var jsonData = JSON.stringify(lista);
    //        alert(jsonData);
    var escritor = "";

    escritor += "<table>" +
                    "<thead><th class=" + "\"style1\" " + "style=" + "\"width:30px;\" " + "></th>" +
                    "<th>Id Queja/Sugerencia</th>" +
                    "<th>Tipo</th>" +
                    "<th>Edificio</th>" +
                    "<th>Lugar</th>" +
                    "<th>Fecha</th>" +
                    "<th>Descripción</th>" +
                    "<th>Estado</th></thead>";

    escritor += "<tbody>";
    $.each(lista, function (i, item) {
        escritor += "<tr>";
        escritor += "<td class=" + "\"style1\"" + " style=" + "\width:30px;\"" + " align=" + "\"center\"" + "><input id=" + "\"RadioButton1\"" + " name=" + "\"R1\"" + " type=" + "\"radio\"" + " value=" + "\"1\"" + " style=" + "\"width:30px;\"/></td>";
        escritor += '<td>' + item.IdQuejas + '</td>';
        if (item.Tipo == 1) { escritor += '<td>Queja</td>'; }
        else { escritor += '<td>Sugerencia</td>'; }
        escritor += '<td>' + item.NombreEdificio + '</td>';
        escritor += '<td>' + item.Lugar + '</td>';
        escritor += '<td>' + item.Fecha + '</td>';
        escritor += '<td>' + item.Descripcion + '</td>';
        if (item.Estado == 1) { escritor += '<td>Activa</td>'; }
        else { escritor += '<td>Atendida</td>'; }
        escritor+= '<td style=\"display:none\">' + item.Anonimo + '</td>';
        escritor += "</tr>";
    });
    escritor += "</toby>";
    escritor += "</table>";
    if (lista.length==0) escritor = "No se encontraron resultados";
    $("#TablaDinamicaBusqueda").html(escritor);
    $("#botonModificarB").show();
    $("#botonAtender").show();
}

$(function () {
    var nameB = $("#nameB"),
            emailB = $("#emailB"),
            passwordB = $("#passwordB"),
            allFields = $([]).add(nameB).add(emailB).add(passwordB),
            tips = $(".validateTips");

    function updateTips(t) {
        tips
                .text(t)
                .addClass("ui-state-highlight");
        setTimeout(function () {
            tips.removeClass("ui-state-highlight", 1500);
        }, 500);
    }
    $("#dialog-form").dialog({
        autoOpen: false,
        height: 600,
        width: 850,
        modal: true,
        buttons: {
            "Aceptar": function () {
                var enviar = {
                    IdQuejas: $("#idQuejas").attr("value"),
                    Lugar: $("#LugarVer").attr("value"),
                    Descripcion:$("#DescripcionVer").attr("value"),
                }
                var jsonData = JSON.stringify(enviar);
                fv = new formValidator();
                if ($("input[name='TipoVer']:checked").val()==1){
                    if (fv.isEmpty(document.getElementById("LugarVer").value) || (!fv.isAlphaNumeric(document.getElementById("LugarVer").value))) {
                    fv.raiseError("Por favor ingrese un lugar correcto");
                    document.getElementById("errorLugar").innerHTML = "Ingrese un lugar correcto";
                    } else {
                    document.getElementById("errorLugar").innerHTML = "";
                    }
                }
                if (fv.isEmpty(document.getElementById("DescripcionVer").value) && !fv.isAlphaNumeric(document.getElementById("DescripcionVer").value)) {
                    fv.raiseError("Por favor seleccione una descripción");
                    document.getElementById("errorDescripcion").innerHTML = "Ingrese una descripción correcta";
                } else {
                    document.getElementById("errorDescripcion").innerHTML = "";
                }
                if (fv.numErrors() < 1) {
                    $.ajax({
                        async:false,
                        type: "POST",
                        data: jsonData,
                        dataType: "json",
                        contentType: "application/json; charset=utf-8",
                        url: "modificarQuejaySugerencia",
                        success: function (data) {
                            window.history.back();
                            alert(data.me);
                            $(this).dialog("close");
                        }
                    });
                }
                
            },
            "Cerrar": function () {
                $(this).dialog("close");
            }
        },
        close: function () {
            allFields.val("").removeClass("ui-state-error");
        }
    });

    $("#botonModificarB").click(function () {

        $("#dialog-form").dialog("open");

        var bValid = true;
        allFields.removeClass("ui-state-error");
        if (bValid) {
            if ($("input:radio[name='R1']:checked")) {

                var IdQuejas, Tipo, NombreEdificio, Lugar, Fecha, Descripcion, Estado, Anonimo;
                $("input:radio[name='R1']:checked").parents("tr").children("td").each(function (index2) {
                    switch (index2) {
                        case 1:
                            IdQuejas = $(this).text();
                            break;
                        case 2:
                            Tipo = $(this).text();
                            break;
                        case 3:
                            NombreEdificio = $(this).text();
                            break;
                        case 4:
                            Lugar = $(this).text();
                            break;
                        case 5:
                            Fecha = $(this).text();
                            break;
                        case 6:
                            Descripcion = $(this).text();
                            break;
                        case 7:
                            Estado = $(this).text();
                            break;
                        case 8:
                            Anonimo =$(this).text();
                            break;
                    }

                })

                if (Estado=="Atendida"){
                    alert("No puedes modificar o atender una queja/sugerencia ya atendida");
                    $("#dialog-form").dialog("close");
                }
                document.getElementById("idQuejas").value = IdQuejas;
                document.getElementById("nombreEdificio").value = NombreEdificio;
                if (Tipo == "Queja") {
                    $("input:radio[name='TipoVer']")[1].checked = false;
                    $("input:radio[name='TipoVer']")[0].checked = true;
                    $("#LugarBuscar").show();
                }
                else {
                    $("input:radio[name='TipoVer']")[0].checked = false;
                    $("input:radio[name='TipoVer']")[1].checked = true;
                }
                document.getElementById("LugarVer").value = Lugar;
                document.getElementById("FechaVer").value = Fecha;
                document.getElementById("DescripcionVer").value = Descripcion;
            }
        }
    });

});

//*************************************************************************
//FUNCION REGRESAR A LA PAGINA ANTERIOR
function menuQuejasySugerencias() {
    window.history.back();
}
//*************************************************************************
//FUNCION ELIMINAR

$(function () {
    var nameB = $("#nameB"),
            emailB = $("#emailB"),
            passwordB = $("#passwordB"),
            allFields = $([]).add(nameB).add(emailB).add(passwordB),
            tips = $(".validateTips");

    function updateTips(t) {
        tips
                .text(t)
                .addClass("ui-state-highlight");
        setTimeout(function () {
            tips.removeClass("ui-state-highlight", 1500);
        }, 500);
    }
    $("#Eliminar").dialog({
        autoOpen: false,
        height: 600,
        width: 850,
        modal: true,
        buttons: {
            "Aceptar": function () {
                var enviar = {
                    Mensaje: $("#ModTbxMensaje").attr("value"),
                    IdQuejas: $("#ModTbxIdUsuario").attr("value"),
                    Anonimo: 2
                }
                var jsonData = JSON.stringify(enviar);
                fv = new formValidator();
                if (fv.isEmpty(document.getElementById("ModTbxMensaje").value)) {
                    fv.raiseError("Por favor ingrese un mensaje");
                    document.getElementById("errorMensaje").innerHTML = "Ingrese un mensaje";
                } else {
                    document.getElementById("errorMensaje").innerHTML = "";
                }
                if (fv.numErrors() < 1) {
                    $.ajax({
                        async:false,
                        type: "POST",
                        data: jsonData,
                        dataType: "json",
                        contentType: "application/json; charset=utf-8",
                        url: "enviarMail",
                        success: function (data) {
                            window.history.back();
                            alert(data.me);
                        }
                    });
                    $(this).dialog("close");
                }
                
            }
//            "Cerrar": function () {
////                $(this).dialog("close");
//            }
        },
        close: function () {
            allFields.val("").removeClass("ui-state-error");
        }
    });

    $("#botonAtender").click(function () {

        $("#Eliminar").dialog("open");
        var bValid = true;
        allFields.removeClass("ui-state-error");
        if (bValid) {
            if ($("input:radio[name='R1']:checked")) {
                var id,Estado,Anonimo;
                $("input:radio[name='R1']:checked").parents("tr").children("td").each(function (index2) {
                    switch (index2) {
                        case 1:
                            id = $(this).text();
                            break;
                        case 7:
                            Estado = $(this).text();
                            break;
                        case 8:
                            Anonimo =$(this).text();
                            break;
                    }
                });
                if (Estado=="Atendida") {
                alert ("No puedes modificar o atender una queja/sugerencia ya atendida");
                $("#Eliminar").dialog("close");
                } else {
                    var question = confirm("¿Ya se atendio la queja/sugerencia?");
                    if (question != 0) {
                            var enviar = {
                            IdQuejas: id
                        }
                        document.getElementById("ModTbxIdUsuario").value = id;
                        var jsonData = JSON.stringify(enviar);
                        
                        $.ajax({
                            async: false,
                            type: "POST",
                            data: jsonData,
                            dataType: "json",
                            contentType: "application/json; charset=utf-8",
                            url: "eliminarQuejaySugerencia"
//                            beforeSend: esperarEliminarQyS(),
//                            success: llegadaEliminarQyS
                        });
                        if (Anonimo == 1) {
                            $("#Eliminar").dialog("close");
                            alert("La queja/sugerencia anonima se atendio correctamente")
                            window.history.back();
                        }
                        
                    }
                }
            }
            else 
            {
                alert("Debe seleccionar una fila");
            }  
        }
    });

});


//BUSCAR DATOS
//var

//********************************************
//function eliminar() {
//    if ($("input:radio[name='R1']:checked")) {
//        var id,Estado;
//        $("input:radio[name='R1']:checked").parents("tr").children("td").each(function (index2) {
//            switch (index2) {
//                case 1:
//                    id = $(this).text();
//                    break;
//                case 7:
//                    Estado = $(this).text();
//                    break;
//            }
//        });
//        if (Estado=="Atendida") {
//        alert ("No puedes modificar o atender una queja/sugerencia ya atendida");
//        } else {
//            var retrievedObject = sessionStorage.getItem("idUsuario")
//            alert(retrievedObject);
//            var question = confirm("¿Ya se atendio la queja/sugerencia?");
//            if (question != 0) {
//                var enviar = {
//                    IdQuejas: id,
//                    Usr: retrievedObject
//                }
//                
//                var jsonData = JSON.stringify(enviar);
//                alert(jsonData);
//                $.ajax({
//                    type: "POST",
//                    data: jsonData,
//                    dataType: "json",
//                    contentType: "application/json; charset=utf-8",
//                    url: "eliminarQuejaySugerencia",
//                    beforeSend: esperarEliminarQyS(),
//                    success: llegadaEliminarQyS
//                });
//            }
//       }
//    }
//    else {
//        alert("Debe seleccionar una fila");
//    }  
// }

//function esperarEliminarQyS() { }
//function llegadaEliminarQyS(data) {
//    
//    window.history.back();
//    alert(data.me);
//}
//******************************************************************